In diesem Lernvideo geht es um die praktische Anbindung von Datenbanken an Anwendungen, konkret mithilfe von Java und einer lokalen MariaDB-Datenbank. Wir betrachten dabei die notwendigen Softwarebausteine, wie sie zusammenspielen und wie man die Umgebung lokal einrichtet, unter anderem mit XAMPP, JDBC und JPA. Um eine Java-Anwendung mit einer Datenbank zu verbinden, benötigen wir mehrere Komponenten. Als Entwicklungsumgebung nutzen wir Eclipse Enterprise in der Version 2024-12 und das aktuelle Java Development Kit (JDK) in der Version 23. Als Datenbanksystem setzen wir MariaDB ein, ein freies, relationales Datenbanksystem, das ursprünglich als Abspaltung (Fork) von MySQL entstanden ist und vollständig quelloffen ist. Es kommt häufig in Open-Source-Projekten zum Einsatz. Für die Kommunikation zwischen Java und MariaDB brauchen wir einen sogenannten JDBC-Treiber. JDBC steht für Java Database Connectivity und beschreibt eine standardisierte Programmierschnittstelle, über die Java-Anwendungen auf relationale Datenbanken zugreifen können. Wir verwenden hierzu den MySQL Connector/J in der Version 9.20, der weitgehend kompatibel zu MariaDB ist. Zusätzlich nutzen wir ein JPA-Modul (Java Persistence API), eine objektorientierte Abstraktionsschicht, die auf JDBC aufbaut. JPA ermöglicht es, mit Java-Objekten direkt zu arbeiten, ohne sich um konkrete SQL-Befehle kümmern zu müssen. In unserem Projekt setzen wir EclipseLink in der Version 4.0.5 ein. Zum Erstellen von Diagrammen empfiehlt sich zudem ein vektorbasiertes Zeichenprogramm, in diesem Fall Microsoft Visio. MariaDB installieren wir im Rahmen des Projekts nicht einzeln, sondern über das Gesamtpaket XAMPP. Diese Abkürzung steht für ein Softwarepaket, das beliebige Betriebssysteme unterstützt (dafür steht das X), und enthält Komponenten wie den Apache Webserver (A), MariaDB (M), die serverseitige Skriptsprache PHP (erstes P) sowie Perl (zweites P). Mit XAMPP kann man einfach und unkompliziert eine lokale Serverumgebung inklusive Datenbank, Webserver und Verwaltungstools aufsetzen. Enthalten sind auch weitere Werkzeuge wie der FTP-Server FileZilla, der Mailserver Mercury, das Statistiktool Webalizer sowie die Verschlüsselungsbibliothek OpenSSL. Besonders wichtig ist für uns, dass MariaDB lokal betrieben und mit Tools wie phpMyAdmin verwaltet werden kann, ohne großen Konfigurationsaufwand. Für das Fach Datenmanagement brauchen wir aus dem XAMPP-Paket konkret MariaDB als Datenbanksystem, PHP als serverseitige Skriptsprache (da das Verwaltungstool phpMyAdmin in PHP geschrieben ist) und den Apache Webserver, der diese PHP-Anwendung lokal verfügbar macht. Ich verwende hier die XAMPP-Version 8.2.12-0 unter Windows 11 Professional, 64-Bit. Die einzelnen Dienste von XAMPP werden unter Windows zentral über ein sogenanntes Control Panel gesteuert. Dort kann man MariaDB, Apache oder andere Komponenten bequem starten und stoppen. Auch ist es möglich, diese Komponenten als Windows-Dienste zu registrieren, sodass sie automatisch beim Hochfahren des Computers starten. Das Control Panel zeigt in Echtzeit an, ob die jeweiligen Dienste gerade laufen, was die Verwaltung der lokalen Serverumgebung stark vereinfacht. Die Datenbankverwaltung erfolgt über die Adresse „[http://localhost/phpmyadmin“](http://localhost/phpmyadmin“). Wenn XAMPP korrekt gestartet wurde, öffnet sich dort im Browser das Verwaltungstool phpMyAdmin, welches eine benutzerfreundliche grafische Oberfläche bietet. So kann man alle Funktionen der Datenbank verwalten, ohne zusätzliche Programme installieren zu müssen. In phpMyAdmin lassen sich die zuvor theoretisch modellierten relationalen Strukturen direkt praktisch umsetzen. Tabellen können erstellt, benannt und mit gewünschten Spalten versehen werden. Auch Primärschlüssel, Beziehungen zwischen Tabellen und weitere Einstellungen sind hier einfach konfigurierbar. Auf diese Weise entsteht aus einem abstrakten Datenmodell Schritt für Schritt eine real nutzbare Datenbankstruktur. Auch die gespeicherten Daten selbst können in phpMyAdmin jederzeit eingesehen und bearbeitet werden. Es ist möglich, neue Datensätze manuell hinzuzufügen, bestehende Einträge zu ändern oder zu löschen. Diese visuelle Kontrolle ist besonders praktisch für spätere Tests, wenn man mit einer Java-Anwendung auf die Datenbank zugreift. Neben der grafischen Oberfläche erlaubt phpMyAdmin zudem die direkte Ausführung von SQL-Befehlen. Im Bereich „SQL“ lassen sich eigene Anweisungen formulieren und deren Ergebnisse unmittelbar prüfen. Das ist hilfreich, um SQL-Abfragen während der Entwicklung oder komplexe Operationen vorab zu testen. Der verwendete JDBC-Treiber, der MySQL Connector/J in der Version 9.20, ermöglicht einer Java-Anwendung, über JDBC mit der MariaDB-Datenbank zu kommunizieren. Ohne diesen Treiber würde keine technische Verbindung zwischen Java und der Datenbank möglich sein; er fungiert gewissermaßen als Adapter zwischen der Java-Anwendung und der Datenbank. Als JPA-Framework nutzen wir EclipseLink, das ursprünglich von Oracle entwickelt wurde und heute als Open-Source-Projekt zur Verfügung steht. EclipseLink sorgt dafür, dass Java-Klassen automatisch mit den zugehörigen Datenbanktabellen verknüpft werden. Anstelle von SQL-Befehlen arbeitet man so direkt mit Objekten, etwa einem Kundenobjekt, wobei EclipseLink im Hintergrund die erforderlichen Datenbankoperationen übernimmt. In unserem Beispiel kommt EclipseLink in der Version 4.0.5 zum Einsatz, veröffentlicht im Dezember 2024.